package com.ruoyi.xp.custom.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 客服问题追踪记录对象 t_xp_custom_service_trace
 * 
 * @author chdx
 * @date 2022-11-30
 */
public class CustomServiceTrace extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 表的id */
    private Long customServiceTraceId;

    /** 平台订单号 */
    @Excel(name = "平台订单号")
    private String orderSn;

    /** 买家姓名 */
    @Excel(name = "买家姓名")
    private String buyerUsername;

    /** 客服服务跟踪状态 */
    @Excel(name = "客服服务跟踪状态")
    private String traceStatus;

    /** 客服服务跟踪类型 */
    @Excel(name = "客服服务跟踪类型")
    private String traceType;

    /** 客户服务问题描述 */
    private String description;

    /** 问题关闭时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "问题关闭时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date closeDate;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;

    /** 最后修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastUpdateDate;

    /** 最后修改人 */
    private Long lastUpdateBy;

    public void setCustomServiceTraceId(Long customServiceTraceId) 
    {
        this.customServiceTraceId = customServiceTraceId;
    }

    public Long getCustomServiceTraceId() 
    {
        return customServiceTraceId;
    }
    public void setOrderSn(String orderSn) 
    {
        this.orderSn = orderSn;
    }

    public String getOrderSn() 
    {
        return orderSn;
    }
    public void setBuyerUsername(String buyerUsername) 
    {
        this.buyerUsername = buyerUsername;
    }

    public String getBuyerUsername() 
    {
        return buyerUsername;
    }
    public void setTraceStatus(String traceStatus) 
    {
        this.traceStatus = traceStatus;
    }

    public String getTraceStatus() 
    {
        return traceStatus;
    }
    public void setTraceType(String traceType) 
    {
        this.traceType = traceType;
    }

    public String getTraceType() 
    {
        return traceType;
    }
    public void setDescription(String description) 
    {
        this.description = description;
    }

    public String getDescription() 
    {
        return description;
    }
    public void setCloseDate(Date closeDate) 
    {
        this.closeDate = closeDate;
    }

    public Date getCloseDate() 
    {
        return closeDate;
    }
    public void setCreateDate(Date createDate) 
    {
        this.createDate = createDate;
    }

    public Date getCreateDate() 
    {
        return createDate;
    }
    public void setLastUpdateDate(Date lastUpdateDate) 
    {
        this.lastUpdateDate = lastUpdateDate;
    }

    public Date getLastUpdateDate() 
    {
        return lastUpdateDate;
    }
    public void setLastUpdateBy(Long lastUpdateBy) 
    {
        this.lastUpdateBy = lastUpdateBy;
    }

    public Long getLastUpdateBy() 
    {
        return lastUpdateBy;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("customServiceTraceId", getCustomServiceTraceId())
            .append("orderSn", getOrderSn())
            .append("buyerUsername", getBuyerUsername())
            .append("traceStatus", getTraceStatus())
            .append("traceType", getTraceType())
            .append("description", getDescription())
            .append("closeDate", getCloseDate())
            .append("createDate", getCreateDate())
            .append("createBy", getCreateBy())
            .append("lastUpdateDate", getLastUpdateDate())
            .append("lastUpdateBy", getLastUpdateBy())
            .toString();
    }
}
